Debugging applications typically involves executing the application in a simulated run-time environment. Debugging an application allows a developer to identify errors in the application's code and correct them. Debugging of applications can be done in numerous ways, including for example, in a development environment used to develop the application code or alternatively in a debugging component associated with a web browser.
An application is defined by application code. The application code may differ depending on the type of device, or the runtime environment the application is to be executed in. For example, the application code may be expressed in various programming languages, such as the C family of languages, Java™, or other languages. Alternatively, the application code may be expressed using a mark-up language, such as hypertext mark-up language (HTML) and a script language such as JavaScript.
In addition to the application code the application may also include dynamically generated code, which is generated by the application code during execution of the application. Although current debugging techniques work well for debugging existing application code, they are not effective for use in debugging code that is dynamically generated during execution of the application, and in particular applications defined using JavaScript code.
Therefore there is a need for an improved system and method for debugging applications having dynamically generated code.